package com.sea.physical.service;


import com.sea.physical.entity.CreateDistributePlan;
import com.sea.physical.entity.CreateDistributeSku;
import org.apache.ibatis.annotations.Param;

import java.io.IOException;
import java.io.InputStream;
import java.util.List;

/**
 * 分配发运计划明细
 * @author 陈鸿飞
 */
public interface CreateDistributePlanService {
    /**
     * 查询表头信息
     * @param createId
     * @return
     */
    CreateDistributePlan findByCreateId(Integer createId);
    /**
     * 新增分配表头
     * @param createDistributePlan
     * @return
     */
    int save(CreateDistributePlan createDistributePlan);
    /**
     * 条件查询
     * @param createDistributePlan
     * @return
     */
    List<CreateDistributePlan> findByCnd(CreateDistributePlan createDistributePlan);

    /**
     * 分配发运计划
     * @param id
     */
    void distribute(Integer id) throws Exception;

    /**
     * 取消计划
     * @param createId
     * @throws Exception
     */
    void cancel(Integer createId) throws Exception;

    /**
     * 发运计划
     * @param createId
     * @throws Exception
     */
    void send(Integer createId) throws Exception;

    /**
     * 更新表头数据
     * @param createId
     * @return
     */
    int updateTotal(Integer createId);

    Integer updateBoxNumberByCreateId(Integer boxNumber,Integer id);

    void cancelAutoDistribute(Integer createId);

    void sureAutoDistribute(Integer createId);

    //文件推送至泛微
    void uploadFwFile(Integer createId,String accessToken) throws Exception;

    void sendFwPostData(Integer createId,String accessToken) throws Exception;


}
